differential constraint